home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d928.lha / MRChoice / MultiRequestChoice.dok < prev    next >
Text File  |  1993-10-07  |  11KB  |  283 lines

  1.  
  2.                           MultiRequestChoice
  3.  
  4.                      Version 1.0 - 1. August 1993
  5.  
  6.                             Dokumentation
  7.  
  8.  
  9.  
  10.  
  11.                     Entwickelt von Rainer Scharnow
  12.                   Copyright (c) 1993 Rainer Scharnow
  13.  
  14.  
  15.  
  16.  
  17.    0. Einführung
  18.    ~~~~~~~~~~~~~
  19.  
  20.       MultiRequestChoice  ist  ein  Requesterutility  für das C: Ver-
  21.    zeichnis.  Es ist als leistungsfähiger und komfortabler Ersatz für
  22.    den  ASK-Befehl und diverse andere Requesterutilities gedacht. Das
  23.    Programm  ist  sehr  nützlich  in Batchfiles oder ARexxscripts. Es
  24.    gibt zahlreiche Vorteile von MultiRequestChoice:
  25.  
  26.    -  Es ist sehr einfach, Requester mit lediglich einem bis
  27.       zu  einer  von Ihnen gewünschten Anzahl von Gadgets zu
  28.       konstruieren
  29.  
  30.    -  Das   Programm   benutzt   die extrem  leistungsstarke
  31.       reqtools.library  (c)  Nico  François;  deshalb war es
  32.       sehr  einfach,  sämtliche  Features in recht kompakten
  33.       Code zu packen
  34.  
  35.    -  Der  Informationstext des Requesters kann aus mehr als
  36.       einer  Zeile  bestehen,  außerdem  ist dieser optional
  37.       zentrierbar
  38.  
  39.    -  Der Requester  kann  optional  auf  jedem Publicscreen
  40.       geöffnet werden
  41.  
  42.    -  Es  gibt  mehrere  Optionen, den Requester zu positio-
  43.       nieren
  44.  
  45.  
  46.    1. Systemanforderungen
  47.    ~~~~~~~~~~~~~~~~~~~~~~
  48.  
  49.  
  50.       MultiRequestChoice  läuft  nicht  auf Amigas mit 1.x OS. Leute,
  51.    die  diese  Betriebssystemversionen nutzen, sei wärmstens ans Herz
  52.    gelegt,  über  ein  Upgrade des Systems nachzudenken. Außerdem muß
  53.    sich die reqtools.library V38+ im Libs: Verzeichnis befinden
  54.  
  55.       Das Programm  sollte  auf allen Amigas mit 68000 bis 68060 Pro-
  56.    zessor  :-) laufen. Man braucht schließlich keine speziellen Hard-
  57.    warehacks, um einen Requester auf den Screen zu bringen ;-).
  58.  
  59.  
  60.    2. Benutzung
  61.    ~~~~~~~~~~~~
  62.  
  63.       MultiRequestChoice  ist ausschließlich vom CLI aus zu benutzen.
  64.    Bei  der  Entwicklung  stand  im  Vordergrund, ein Utility zu ent-
  65.    werfen, das Batchdateien bzw. ARexxscripts unterstützen soll; dem-
  66.    nach ist der Einsatz von der Workbench ziemlich sinnlos.
  67.  
  68.       Es gilt folgende Syntax:
  69.  
  70.    MultiRequestChoice <Reqtitle> <Bodytext> <Gad1|Gad2|...|Gadx>
  71.                       [PUB|PUBSCREEN <Pubscreenname>]
  72.                       [CENTRETEXT]
  73.                       [SCREENTOPLEFT|SCREENCENTRE|MOUSECENTRE]
  74.  
  75.       MultiRequestChoice  erfordert  unbedingt  mindestens drei Para-
  76.    meter,  sonst  bekommt  der  User  lapidar noch einmal die Syntax-
  77.    vorgaben  ausgedruckt.  Es  folgt  eine Erklärung dieser drei not-
  78.    wendigen Parameter:
  79.  
  80.    -  Reqtitle  -
  81.       der Title in der Dragbar des Requesters
  82.  
  83.    -  Bodytext  -
  84.       der  Text, der im Requester als Informationstext steht
  85.       und die Aufgabe hat, den User über die augenblickliche
  86.       Situation  zu  informieren.  Als  Schmankerl wird eine
  87.       Newline-Option  angeboten.  Es  handelt  sich  um  die
  88.       Zeichenfolge  '\n', die im Textstring angegeben werden
  89.       kann  und  einen  Zeilenvorschub bewirkt. Es ist somit
  90.       möglich, Requester mit mehrzeiligen Informationstexten
  91.       zu  produzieren.  Wenn  die  Notwendigkeit besteht, im
  92.       Requester  selbst  das  Zeichen '\' auszugeben, so muß
  93.       man lediglich '\\' im String anführen. C-Programmierer
  94.       wissen auf jeden Fall, was gemeint ist, bei Unklarheit
  95.       sollte man sich die Beispiele anschauen
  96.  
  97.    -  Gad1|Gad2|...|Gadx  -
  98.       Parameter zur Angabe des/der Gadgets. Der User hat die
  99.       Möglichkeit,   eine  von  ihm  gewünschte  Anzahl  von
  100.       Gadgets  in  den  Requester  einzubauen. Die einzelnen
  101.       Gadgetnamen  werden  durch  ein  '|' getrennt. Gleich-
  102.       zeitig  wird  damit  bestimmt,  wie viele Gadgets auf-
  103.       tauchen  sollen. Nebenbei ist noch eine Tastaturunter-
  104.       stützung  enthalten.  Ein  '_'  Character, der vor das
  105.       Zeichen  im  Gadgetstring, das als HotKey dienen soll,
  106.       eingefügt  wird,  erlaubt  eine Tasturauswahl der ein-
  107.       zelnen  Gadgets. Auch hier wird auf die Beispiele ver-
  108.       wiesen.
  109.  
  110.       In  99%  aller  Fälle  befinden  sich einige Leerzeichen in den
  111.    Strings.  Dieses Problem läßt sich bewältigen, indem man jeden der
  112.    Strings  in Anführungszeichen setzt. Dies hat natürlich nichts mit
  113.    MultiRequestChoice zu tun, sondern ist ein Shell-Feature.
  114.  
  115.       Letztlich  gibt  es  noch  ein paar nützliche Optionen, die das
  116.    Verwenden des Requesters außerordentlich attraktiv machen:
  117.  
  118.    -  Es  existiert  eine  PUB oder PUBSCREEN Option (beides
  119.       bewirkt  dasselbe), die ein Argument erfordert. Dieses
  120.       Argument  ist  der Name des PublicScreens, auf dem der
  121.       Requester erscheinen soll. Wenn kein PublicScreen exi-
  122.       stiert,  der  diesen Namen besitzt, so öffnet sich der
  123.       Requester automatisch auf der Workbench - genauso, als
  124.       würde man die Option nicht verwenden
  125.  
  126.    -  CENTRETEXT hat die Aufgabe, den Requesterinformations-
  127.       text  zu  zentrieren.  Die  Option ist jedoch nur dann
  128.       sinnvoll zu verwenden, wenn ein mehrzeiliger Text aus-
  129.       gegeben  wird,  da  einzeiliger Text sowieso zentriert
  130.       erscheint. Voreingestellt ist: linksbündige Ausgabe
  131.  
  132.    -  Die    SCREENTOPLEFT|SCREENCENTRE|MOUSECENTRE   Option
  133.       entscheidet  über  die Position, also wo der Requester
  134.       auf dem Screen auftaucht. Bei Angabe von SCREENTOPLEFT
  135.       wird  der  Requester  in  der  linken  oberen Ecke des
  136.       Screens geöffnet, bei SCREENCENTRE erscheint er in der
  137.       Mitte  des Screens, und bei MOUSECENTRE wird versucht,
  138.       den  Requester direkt unter dem Mousezeiger zu öffnen.
  139.       Voreingestellt  ist: MOUSECENTRE. Die Beispiele zeigen
  140.       alle drei Möglichkeiten
  141.  
  142.  
  143.    3. Rückgabewerte
  144.    ~~~~~~~~~~~~~~~~
  145.  
  146.       Die  ganze  Angelegenheit  wäre sinnlos, wenn das Betätigen des
  147.    oder  der  Requestergadgets keine Rückgabewerte liefern würde. Das
  148.    Programm übergibt seine Werte der Standardsystemvariablen $RC, die
  149.    bei  Batchbetrieb  zur Auswertung herangezogen wird, bzw. im Falle
  150.    von  ARexx an die ARexx-Standardvariable RC. Dabei gelten folgende
  151.    Regeln:
  152.  
  153.       Im  Falle,  daß der Requester mehr als ein Gadget besitzt, lie-
  154.    fert  das am meisten rechts befindliche IMMER den Wert 0. Im Falle
  155.    eines  einzigen  Gadgets  wird  der Requester lediglich zur Infor-
  156.    mation  des  Users benutzt, und es ist egal, was der Requester zu-
  157.    rückliefert.
  158.  
  159.       Das  am  meisten  links  befindliche Gadget ergibt IMMER 1, das
  160.    nächste  2,  das  dritte  3 usw. Dies wird wohl auch die simpelste
  161.    Lösung sein.
  162.  
  163.       Im  Falle, daß MultiRequestChoice eine Systemresource nicht be-
  164.    legen  konnte  (z.B.  keine  reqtools.library vorhanden ist), oder
  165.    sonst  irgendwelche  Probleme auftreten sollten, ist der Rückgabe-
  166.    wert  200.  An alle Freunde von vielen Gadgets: Es kann zu Mißver-
  167.    ständnissen  im Rückgabewert kommen, wenn man mehr als 200 Gadgets
  168.    verwendet  :-).  Sollten  mich  aber dennoch viele Zuschriften er-
  169.    reichen,  so  bin  ich durchaus bereit, den Fehlerrückgabewert auf
  170.    205 zu erhöhen 8-)
  171.  
  172.  
  173.    4. Beispiele
  174.    ~~~~~~~~~~~~
  175.  
  176.       Warum  soll  man  sich  Arbeit  zweimal  machen? In diesem Ver-
  177.    zeichnis  befinden  sich zwei Demos: MRCDemo.bat und MRCDemo.rexx.
  178.    Nahezu  alle  Möglichkeiten  des Requesters werden gezeigt. Kleine
  179.    Demos  sind  halt  doch besser als seitenlange Erklärungen. Zuerst
  180.    muß  man  in das Verzeichnis von MultiRequestChoice wechseln. Will
  181.    man  die  Batchdatei  MRCDemo.bat  starten, so schreibe man in die
  182.    Shell  'execute  MRCDemo.bat'  oder 'rx MRCDemo.rexx' im Falle des
  183.    ARexxscripts.
  184.  
  185.       Man  sollte  sich auf jeden Fall beide MRCDemo-Dateien ansehen.
  186.    Sie  sind  zwar  nicht  kommentiert,  jedoch  so  einfach, daß sie
  187.    selbsterklärend sind.
  188.  
  189.  
  190.    5. Copyright
  191.    ~~~~~~~~~~~~
  192.  
  193.       Copyright (c) 1993 Rainer Scharnow
  194.  
  195.       Ich,  Rainer  Scharnow, gebe meine Erlaubnis, wortwörtliche Ko-
  196.    pien  dieser  Anleitung  zu  erzeugen und zu verbreiten. Sämtliche
  197.    Copyrighterklärungen  und  diese Erlaubnis müssen in diesen Kopien
  198.    enthalten sein.
  199.  
  200.       Es ist NICHT garantiert, daß dieses Programm / diese Programme,
  201.    das/die  in  dieser  Anleitung  beschrieben ist/sind, 100prozentig
  202.    funktionieren.  Der Benutzer arbeitet mit diesem Programm / diesen
  203.    Programmen auf eigenes Risiko. Sollte irgendein Schaden entstehen,
  204.    der in Verbindung mit diesem Programm / diesen Programmen zu brin-
  205.    gen  ist,  kann  der Autor nicht dafür verantwortlich oder haftbar
  206.    gemacht werden.
  207.  
  208.       Dieses  Paket  ist  "freely  distributable", aber das Copyright
  209.    liegt  bei Rainer Scharnow. Diese Software dürfen Sie so lange und
  210.    so oft benutzen und kopieren, wie Sie wollen und solange die Copy-
  211.    gebühr einschließlich Diskettenpreis DM 5,- oder (geltend für Ver-
  212.    sand ins Ausland) US$ 6,- nicht übersteigt. Ausnahmen: Datenmedien
  213.    wie CD ROM und Laser Disk.
  214.  
  215.       Es  ist  ausdrücklich  erlaubt, diese Software in Public Domain
  216.    Serien  aufzunehmen, z.B. in Fred Fishs Library, und sie auf BBS's
  217.    und FTP-Server upzuloaden. Dabei müssen alle Files, die im Kapitel
  218.    Verzeichnisinhalt aufgelistet sind, enthalten sein.
  219.  
  220.       Kein  Programm  dieses  Pakets  darf  Bestandteil einer kommer-
  221.    ziellen  Software sein, ohne daß die Erlaubnis von Rainer Scharnow
  222.    dazu  gegeben  wurde.  Ferner ist es strikt untersagt, dieses Pro-
  223.    gramm  /  diese  Programme  in  irgendeiner Weise für militärische
  224.    Zwecke zu nutzen.
  225.  
  226.  
  227.    6. Verzeichnisinhalt
  228.    ~~~~~~~~~~~~~~~~~~~~
  229.  
  230.       Im Verzeichnis müssen folgende Files enthalten sein:
  231.  
  232.       MRCDemo.bat
  233.       MRCDemo.rexx
  234.       MultiRequestChoice
  235.       MultiRequestChoice.doc
  236.       MultiRequestChoice.doc.info
  237.       MultiRequestChoice.dok
  238.       MultiRequestChoice.dok.info
  239.  
  240.  
  241.    7. Dank und Grüße
  242.    ~~~~~~~~~~~~~~~~~
  243.  
  244.       Besonderer Dank geht an:
  245.  
  246.    -  Matthew  Dillon,  den  Autor des großartigen DICE Com-
  247.       pilers, mit dem das Programm compiliert wurde
  248.  
  249.    -  Stefan  Becker,  den dt. Distributor von DICE. Ich er-
  250.       hielt  DICE  bereits  eine  Woche  nach  Sendung einer
  251.       EMail.  Kommerzielle  Vertriebe sollten sich daran ein
  252.       Beispiel  nehmen!  Nebenbei:  Ich  benutze  den  Tool-
  253.       Manager  -  da  gibt's  nichts  zu  sagen, nur noch zu
  254.       klicken :-)
  255.  
  256.    -  Nico François (der Teufel hole das 'ç' ;-)), den Autor
  257.       des PowerPackers und der wundervollen ReqTools-Kollek-
  258.       tion. Mit ReqTools ist es ein Kinderspiel, ein solches
  259.       Programm zu schreiben
  260.  
  261.    -  Martin  Taillefer/Oxxi für TurboText, einen der besten
  262.       Editoren,  den  ich bis jetzt gesehen habe (Ich hoffe,
  263.       es fühlen sich die fanatischen User von vi oder stevie
  264.       nicht beleidigt :-))
  265.  
  266.  
  267.    8. Bugs
  268.    ~~~~~~~
  269.  
  270.       Ich  hoffe,  daß  es in dem Programm keine Bugs gibt, wenn doch
  271.    welche  gefunden  werden  sollten - sofort eine Nachricht an mich.
  272.    Vorschläge über mögliche Verbesserungen sind ebenfalls erwünscht.
  273.  
  274.       Rainer Scharnow
  275.       Linderhofstr. 70
  276.       12623 Berlin
  277.       Germany
  278.  
  279.       EMail: scharnow@informatik.tfh-berlin.d400.de
  280.  
  281.  
  282.    EOF
  283.